package org.nf.mvc.param;

import org.nf.mvc.servlet.ParamTypeHandler;
import org.nf.mvc.util.ConvertUtil;

import java.lang.reflect.Parameter;

/**
 * @Author : LLH
 * @create 2021/5/26
 */
public class BasicTypeHandler extends ParamTypeHandler {
    @Override
    protected Object handle(Parameter parameter) {
        // 获取参数类型
        Class<?> parameterType = parameter.getType();

        // 获取参数名
        String parameterName = parameter.getName();

        // 获取请求中的数据
        String requestParameter = request.getParameter(parameterName);

        // 进行类型转换
        try {
            Object value = ConvertUtil.convert(requestParameter,parameterType);
            return value;
        } catch (Exception e) {
            return null;
        }


    }
}
